home *** CD-ROM | disk | FTP | other *** search
- #ifndef LIBRARIES_REQTOOLS_H
- #define LIBRARIES_REQTOOLS_H
- /*
- ** $Filename: libraries/reqtools.h $
- ** $Release: 2.1 $
- ** $Revision: 38.10 $
- **
- ** reqtools.library definitions
- **
- ** (C) Copyright 1991-1993 Nico François
- ** All Rights Reserved
- */
-
- #ifndef EXEC_TYPES_H
- #include <exec/types.h>
- #endif
-
- #ifndef EXEC_LISTS_H
- #include <exec/lists.h>
- #endif
-
- #ifndef EXEC_LIBRARIES_H
- #include <exec/libraries.h>
- #endif
-
- #ifndef EXEC_SEMAPHORES_H
- #include <exec/semaphores.h>
- #endif
-
- #ifndef LIBRARIES_DOS_H
- #include <libraries/dos.h>
- #endif
-
- #ifndef LIBRARIES_DOSEXTENS_H
- #include <libraries/dosextens.h>
- #endif
-
- #ifndef LIBRARIES_DISKFONT_H
- #include <libraries/diskfont.h>
- #endif
-
- #ifndef GRAPHICS_TEXT_H
- #include <graphics/text.h>
- #endif
-
- #ifndef UTILITY_TAGITEM_H
- #include <utility/tagitem.h>
- #endif
-
- #define REQTOOLSNAME "reqtools.library"
- #define REQTOOLSVERSION 38L
-
-
-
- #define RTPREF_FILEREQ 0L
- #define RTPREF_FONTREQ 1L
- #define RTPREF_PALETTEREQ 2L
- #define RTPREF_SCREENMODEREQ 3L
- #define RTPREF_VOLUMEREQ 4L
- #define RTPREF_OTHERREQ 5L
- #define RTPREF_NR_OF_REQ 6L
-
- struct ReqDefaults {
- ULONG Size;
- ULONG ReqPos;
- UWORD LeftOffset;
- UWORD TopOffset;
- UWORD MinEntries;
- UWORD MaxEntries;
- };
-
- struct ReqToolsPrefs {
-
- ULONG PrefsSize;
- struct SignalSemaphore PrefsSemaphore;
-
- ULONG Flags;
- struct ReqDefaults ReqDefaults[RTPREF_NR_OF_REQ];
- };
-
- #define RTPREFS_SIZE \
- (sizeof (struct ReqToolsPrefs) - sizeof (struct SignalSemaphore) - 4)
-
-
-
- #define RTPRB_DIRSFIRST 0L
- #define RTPRF_DIRSFIRST (1L<<RTPRB_DIRSFIRST)
- #define RTPRB_DIRSMIXED 1L
- #define RTPRF_DIRSMIXED (1L<<RTPRB_DIRSMIXED)
- #define RTPRB_IMMSORT 2L
- #define RTPRF_IMMSORT (1L<<RTPRB_IMMSORT)
- #define RTPRB_NOSCRTOFRONT 3L
- #define RTPRF_NOSCRTOFRONT (1L<<RTPRB_NOSCRTOFRONT)
-
-
-
- struct ReqToolsBase {
- struct Library LibNode;
- UBYTE RTFlags;
- UBYTE pad[3];
- BPTR SegList;
-
-
-
-
-
-
- struct IntuitionBase *IntuitionBase;
- struct GfxBase *GfxBase;
- struct DosLibrary *DOSBase;
-
- struct Library *GadToolsBase;
- struct Library *UtilityBase;
-
-
-
-
- UWORD RealOpenCnt;
- UWORD AvailFontsLock;
- struct AvailFontsHeader *AvailFontsHeader;
- ULONG FontsAssignType;
- BPTR FontsAssignLock;
- struct AssignList *FontsAssignList;
- struct ReqToolsPrefs ReqToolsPrefs;
- UWORD prefspad;
- };
-
-
- #define RT_FILEREQ 0L
- #define RT_REQINFO 1L
- #define RT_FONTREQ 2L
-
- #define RT_SCREENMODEREQ 3L
-
-
-
-
-
- struct rtFileRequester {
- ULONG ReqPos;
- UWORD LeftOffset;
- UWORD TopOffset;
- ULONG Flags;
- struct Hook *Hook;
-
- char *Dir;
- char *MatchPat;
-
- struct TextFont *DefaultFont;
- ULONG WaitPointer;
-
- ULONG LockWindow;
- ULONG ShareIDCMP;
- struct Hook *IntuiMsgFunc;
- UWORD reserved1;
- UWORD reserved2;
- UWORD reserved3;
- UWORD ReqHeight;
-
- };
-
-
-
- struct rtFileList {
- struct rtFileList *Next;
- ULONG StrLen;
- char *Name;
- };
-
-
-
- struct rtVolumeEntry {
- ULONG Type;
- char *Name;
- };
-
-
-
-
-
- struct rtFontRequester {
- ULONG ReqPos;
- UWORD LeftOffset;
- UWORD TopOffset;
- ULONG Flags;
- struct Hook *Hook;
-
- struct TextAttr Attr;
-
- struct TextFont *DefaultFont;
- ULONG WaitPointer;
-
- ULONG LockWindow;
- ULONG ShareIDCMP;
- struct Hook *IntuiMsgFunc;
- UWORD reserved1;
- UWORD reserved2;
- UWORD reserved3;
- UWORD ReqHeight;
-
- };
-
-
-
-
-
- struct rtScreenModeRequester {
- ULONG ReqPos;
- UWORD LeftOffset;
- UWORD TopOffset;
- ULONG Flags;
- ULONG private1;
-
- ULONG DisplayID;
- UWORD DisplayWidth;
- UWORD DisplayHeight;
-
- struct TextFont *DefaultFont;
- ULONG WaitPointer;
- ULONG LockWindow;
- ULONG ShareIDCMP;
- struct Hook *IntuiMsgFunc;
- UWORD reserved1;
- UWORD reserved2;
- UWORD reserved3;
- UWORD ReqHeight;
-
- UWORD DisplayDepth;
- UWORD OverscanType;
- ULONG AutoScroll;
-
- };
-
-
-
-
-
- struct rtReqInfo {
- ULONG ReqPos;
- UWORD LeftOffset;
- UWORD TopOffset;
- ULONG Width;
- char *ReqTitle;
- ULONG Flags;
- struct TextFont *DefaultFont;
- ULONG WaitPointer;
-
- ULONG LockWindow;
- ULONG ShareIDCMP;
- struct Hook *IntuiMsgFunc;
-
- };
-
-
-
-
-
- struct rtHandlerInfo {
- ULONG private1;
- ULONG WaitMask;
- ULONG DoNotWait;
-
- };
-
-
-
- #define CALL_HANDLER (ULONG)0x80000000
-
-
-
-
- #define RT_TagBase TAG_USER
-
-
-
- #define RT_Window (RT_TagBase+1)
-
- #define RT_IDCMPFlags (RT_TagBase+2)
-
- #define RT_ReqPos (RT_TagBase+3)
-
- #define RT_LeftOffset (RT_TagBase+4)
-
- #define RT_TopOffset (RT_TagBase+5)
-
- #define RT_PubScrName (RT_TagBase+6)
-
- #define RT_Screen (RT_TagBase+7)
-
- #define RT_ReqHandler (RT_TagBase+8)
-
- #define RT_DefaultFont (RT_TagBase+9)
-
- #define RT_WaitPointer (RT_TagBase+10)
-
- #define RT_Underscore (RT_TagBase+11)
-
- #define RT_ShareIDCMP (RT_TagBase+12)
-
- #define RT_LockWindow (RT_TagBase+13)
-
- #define RT_ScreenToFront (RT_TagBase+14)
-
- #define RT_TextAttr (RT_TagBase+15)
-
- #define RT_IntuiMsgFunc (RT_TagBase+16)
-
- #define RT_Locale (RT_TagBase+17)
-
-
-
- #define RTEZ_ReqTitle (RT_TagBase+20)
-
-
- #define RTEZ_Flags (RT_TagBase+22)
-
- #define RTEZ_DefaultResponse (RT_TagBase+23)
-
-
-
- #define RTGL_Min (RT_TagBase+30)
-
- #define RTGL_Max (RT_TagBase+31)
-
- #define RTGL_Width (RT_TagBase+32)
-
- #define RTGL_ShowDefault (RT_TagBase+33)
-
- #define RTGL_GadFmt (RT_TagBase+34)
-
- #define RTGL_GadFmtArgs (RT_TagBase+35)
-
- #define RTGL_Invisible (RT_TagBase+36)
-
- #define RTGL_BackFill (RT_TagBase+37)
-
- #define RTGL_TextFmt (RT_TagBase+38)
-
- #define RTGL_TextFmtArgs (RT_TagBase+39)
-
- #define RTGL_Flags RTEZ_Flags
-
-
-
- #define RTGS_Width RTGL_Width
-
- #define RTGS_AllowEmpty (RT_TagBase+80)
-
- #define RTGS_GadFmt RTGL_GadFmt
-
- #define RTGS_GadFmtArgs RTGL_GadFmtArgs
-
- #define RTGS_Invisible RTGL_Invisible
-
- #define RTGS_BackFill RTGL_BackFill
-
- #define RTGS_TextFmt RTGL_TextFmt
-
- #define RTGS_TextFmtArgs RTGL_TextFmtArgs
-
- #define RTGS_Flags RTEZ_Flags
-
-
-
- #define RTFI_Flags (RT_TagBase+40)
-
- #define RTFI_Height (RT_TagBase+41)
-
- #define RTFI_OkText (RT_TagBase+42)
-
- #define RTFI_VolumeRequest (RT_TagBase+43)
-
- #define RTFI_FilterFunc (RT_TagBase+44)
-
- #define RTFI_AllowEmpty (RT_TagBase+45)
-
-
-
- #define RTFO_Flags RTFI_Flags
-
- #define RTFO_Height RTFI_Height
-
- #define RTFO_OkText RTFI_OkText
-
- #define RTFO_SampleHeight (RT_TagBase+60)
-
- #define RTFO_MinHeight (RT_TagBase+61)
-
- #define RTFO_MaxHeight (RT_TagBase+62)
-
-
- #define RTFO_FilterFunc RTFI_FilterFunc
-
-
-
- #define RTSC_Flags RTFI_Flags
-
- #define RTSC_Height RTFI_Height
-
- #define RTSC_OkText RTFI_OkText
-
- #define RTSC_PropertyFlags (RT_TagBase+90)
-
- #define RTSC_PropertyMask (RT_TagBase+91)
-
- #define RTSC_MinWidth (RT_TagBase+92)
-
- #define RTSC_MaxWidth (RT_TagBase+93)
-
- #define RTSC_MinHeight (RT_TagBase+94)
-
- #define RTSC_MaxHeight (RT_TagBase+95)
-
- #define RTSC_MinDepth (RT_TagBase+96)
-
- #define RTSC_MaxDepth (RT_TagBase+97)
-
- #define RTSC_FilterFunc RTFI_FilterFunc
-
-
-
- #define RTFI_Dir (RT_TagBase+50)
-
- #define RTFI_MatchPat (RT_TagBase+51)
-
- #define RTFI_AddEntry (RT_TagBase+52)
-
- #define RTFI_RemoveEntry (RT_TagBase+53)
-
- #define RTFO_FontName (RT_TagBase+63)
-
- #define RTFO_FontHeight (RT_TagBase+64)
-
- #define RTFO_FontStyle (RT_TagBase+65)
-
- #define RTFO_FontFlags (RT_TagBase+66)
-
- #define RTSC_ModeFromScreen (RT_TagBase+80)
-
- #define RTSC_DisplayID (RT_TagBase+81)
-
- #define RTSC_DisplayWidth (RT_TagBase+82)
-
- #define RTSC_DisplayHeight (RT_TagBase+83)
-
- #define RTSC_DisplayDepth (RT_TagBase+84)
-
- #define RTSC_OverscanType (RT_TagBase+85)
-
- #define RTSC_AutoScroll (RT_TagBase+86)
-
-
-
- #define RTPA_Color (RT_TagBase+70)
-
-
-
- #define RTRH_EndRequest (RT_TagBase+60)
-
-
-
-
-
-
- #define REQPOS_POINTER 0L
- #define REQPOS_CENTERWIN 1L
- #define REQPOS_CENTERSCR 2L
- #define REQPOS_TOPLEFTWIN 3L
- #define REQPOS_TOPLEFTSCR 4L
-
-
- #define REQ_CANCEL 0L
- #define REQ_OK 1L
-
-
- #define FREQB_NOBUFFER 2L
- #define FREQF_NOBUFFER (1L<<FREQB_NOBUFFER)
-
-
- #define FREQB_MULTISELECT 0L
- #define FREQF_MULTISELECT (1L<<FREQB_MULTISELECT)
- #define FREQB_SAVE 1L
- #define FREQF_SAVE (1L<<FREQB_SAVE)
- #define FREQB_NOFILES 3L
- #define FREQF_NOFILES (1L<<FREQB_NOFILES)
- #define FREQB_PATGAD 4L
- #define FREQF_PATGAD (1L<<FREQB_PATGAD)
- #define FREQB_SELECTDIRS 12L
- #define FREQF_SELECTDIRS (1L<<FREQB_SELECTDIRS)
-
-
- #define FREQB_FIXEDWIDTH 5L
- #define FREQF_FIXEDWIDTH (1L<<FREQB_FIXEDWIDTH)
- #define FREQB_COLORFONTS 6L
- #define FREQF_COLORFONTS (1L<<FREQB_COLORFONTS)
- #define FREQB_CHANGEPALETTE 7L
- #define FREQF_CHANGEPALETTE (1L<<FREQB_CHANGEPALETTE)
- #define FREQB_LEAVEPALETTE 8L
- #define FREQF_LEAVEPALETTE (1L<<FREQB_LEAVEPALETTE)
- #define FREQB_SCALE 9L
- #define FREQF_SCALE (1L<<FREQB_SCALE)
- #define FREQB_STYLE 10L
- #define FREQF_STYLE (1L<<FREQB_STYLE)
-
-
- #define SCREQB_SIZEGADS 13L
- #define SCREQF_SIZEGADS (1L<<SCREQB_SIZEGADS)
- #define SCREQB_DEPTHGAD 14L
- #define SCREQF_DEPTHGAD (1L<<SCREQB_DEPTHGAD)
- #define SCREQB_NONSTDMODES 15L
- #define SCREQF_NONSTDMODES (1L<<SCREQB_NONSTDMODES)
- #define SCREQB_GUIMODES 16L
- #define SCREQF_GUIMODES (1L<<SCREQB_GUIMODES)
- #define SCREQB_AUTOSCROLLGAD 18L
- #define SCREQF_AUTOSCROLLGAD (1L<<SCREQB_AUTOSCROLLGAD)
- #define SCREQB_OVERSCANGAD 19L
- #define SCREQF_OVERSCANGAD (1L<<SCREQB_OVERSCANGAD)
-
-
- #define EZREQB_NORETURNKEY 0L
- #define EZREQF_NORETURNKEY (1L<<EZREQB_NORETURNKEY)
- #define EZREQB_LAMIGAQUAL 1L
- #define EZREQF_LAMIGAQUAL (1L<<EZREQB_LAMIGAQUAL)
- #define EZREQB_CENTERTEXT 2L
- #define EZREQF_CENTERTEXT (1L<<EZREQB_CENTERTEXT)
-
-
- #define GLREQB_CENTERTEXT EZREQB_CENTERTEXT
- #define GLREQF_CENTERTEXT EZREQF_CENTERTEXT
- #define GLREQB_HIGHLIGHTTEXT 3L
- #define GLREQF_HIGHLIGHTTEXT (1L<<GLREQB_HIGHLIGHTTEXT)
-
-
- #define GSREQB_CENTERTEXT EZREQB_CENTERTEXT
- #define GSREQF_CENTERTEXT EZREQF_CENTERTEXT
- #define GSREQB_HIGHLIGHTTEXT GLREQB_HIGHLIGHTTEXT
- #define GSREQF_HIGHLIGHTTEXT GLREQF_HIGHLIGHTTEXT
-
-
- #define VREQB_NOASSIGNS 0L
- #define VREQF_NOASSIGNS (1L<<VREQB_NOASSIGNS)
- #define VREQB_NODISKS 1L
- #define VREQF_NODISKS (1L<<VREQB_NODISKS)
- #define VREQB_ALLDISKS 2L
- #define VREQF_ALLDISKS (1L<<VREQB_ALLDISKS)
-
-
- #ifndef NO_REQTOOLS_OBSOLETE
- #define REQHOOK_WILDFILE 0L
- #define REQHOOK_WILDFONT 1L
- #define FREQB_DOWILDFUNC 11L
- #define FREQF_DOWILDFUNC (1L<<FREQB_DOWILDFUNC)
- #endif
-
- #endif
-